"""占位符字符串和f字符串
如果需要控制数字的精度，使用占位符字符串
其他情形一律使用f-string
"""


"""占位符字符串

占位符

- `%s` 将内容转换成字符串，放入占位位置
- `%d` 将内容转换成整数，放入占位位置
- `%f` 将内容转换成浮点型，放入占位位置

用于控制精度的符号

- `m` 控制宽度，要求是数字，设置的宽度小于数字自身，不生效。可以在 `m` 前添加 `0` 来使用 `0` 来补位
- `.n` 控制小数点精度，要求是数字，会进行小数的四舍五入
- `-` 配合 `m` 使用，控制宽度不够时在右边补空格，默认在左边补空格
"""

num1 = 3.141
num2 = 123
string = 'hello world'
msg1 = 'num1的值是%6.2f，num2的值是%06d，string的值是%s' % (num1, num2, string)
print(msg1) # num1的值是  3.14，num2的值是000123，string的值是hello world
print('%-6.2f是num1的值' % num1) # 3.14  是num1的值


"""f-字符串"""
# 不需要精度控制时，f-string的写法明显比占位符字符串简单
msg2 = f'num1的值是{num1}，num2的值是{num2}，string的值是{string}'
print(msg2) # num1的值是3.141，num2的值是123，string的值是hello world